Caching

Caching is a server side framework for temporarily holding items that may be reused multiple times within a certain time frame. Using the cache eliminates repetitive tasks that may be overly cumbersome and slow to repeat - however, they consume memory and may impact under-resourced systems. Caching settings affect the entire application globally.

Caching is highly recommended as it can dramatically improve performance.

Note: that setting a cache setting to "0" will turn that cache feature off.

  • Metadata Cache: this cache holds metadata related to data base structures and models, extracted for queries. Caching metadata can have a significant positive impact on performance and should be used. It should be used with at least a time out of 1-3 hours.
  • Metadata Overlay Cache: this cache holds "overlayed" metadata related to data base structures and models, extracted for queries. Overlays are specific to users and roles. Caching it is highly recommended unless there is an excessively large number of overlay variations. It should be used with at least a time out of 1-3 hours.
  • Content Cache: this cache hold any definitions needed to define how queries are to be used, displayed and presented in the application. Using this cache can unload the burden on the database repository. It should be used with at least a time out of 1-15 minutes.
  • Query Cache: this cache holds the results of any previously executed queries. This cache is recommended for solutions where the same queries are executed multiple times by multiple users. It should be used with at least a time out of 3-5 minutes.
  • Query Calculation Cache: this cache is related to the query cache, but holds the calculation results (as opposed to entire queries). It should be used with at least a time out of 1-3 minutes.
  • Minimum Time per Million Cells: this setting is used to determine whether "slow" vs "fast" queries should be saved to cache. The cache limit is presented as the time taken to resolve a million cells. The higher the number the fewer queries will be included in the cache - since those below the threshold will be deemed fast enough to NOT add to the cache. For instance, if it took just 500 ms to run a query of 5 million cells, there's no need to save it to cache.
  • Max Query Cache Size: the maximum amount of query results that can be saved to cache at any one time.
  • Member Security Cache: this cache holds the member security settings for a given user. This cache is recommended for solutions where there is lots of data access security for each user at the member (or row) level. It should be used with at least a time out of 10 minutes.